package com.huluobo.hyj.hyjmodel.data.db

import com.huluobo.hyj.hyjmodel.extention.toVarargArray
import org.jetbrains.anko.db.MapRowParser
import org.jetbrains.anko.db.insert
import org.jetbrains.anko.db.select

class IMDatabase {
    //伴生代码块
    companion object{
        val databaseHelper = DatabaseHelper()
        val instance = IMDatabase()
    }

    //增加
    fun saveContact(context: Contact){
        databaseHelper.use {
            //SQLiteDatabase的扩展方法
            insert(ContacTable.NAME,*context.map.toVarargArray())
        }
    }
    //查
    fun getAllContacts():List<Contact> = databaseHelper.use {
        select(ContacTable.NAME) //查询所有的语句（是个表）
            .parseList(object : MapRowParser<Contact>{ //这个是转换成list集合
            override fun parseRow(columns: Map<String, Any?>): Contact = Contact(columns.toMutableMap())
        })
    }
    //删除 删除所有
    fun deleteAllContacts(){
        databaseHelper.use {
            delete(ContacTable.NAME,null,null)
        }
    }
}